package com.demo.model.Excel;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

@Data
//设置头部行的行高
@HeadRowHeight(20)
//设置单元格的行高
@ColumnWidth(20)
public class Excel {



    //编号
    //标明excel字段 并设置对应的标题和字段
    @ExcelProperty("编号")
    private Integer serialNumber;
    @ExcelProperty("作业名称")
    //作业名称
    private String jobName;
    //生产计划
    @ExcelProperty("生产计划")
    private String productionPlan;
    //计划排产
    @ExcelProperty("计划排产")
    private Integer scheduling;
    //产品
    @ExcelProperty("产品")
    private String product;
    //型号
    @ExcelProperty("型号")
    private String model;
    //规格
    @ExcelProperty("规格")
    private String specification;
    //单位
    @ExcelProperty("单位")
    private String unit;
    //忽略该字段
    @ExcelIgnore
    private String remark;
//    //忽略该字段
//    @ExcelIgnore
    @ExcelProperty("生产数量")
    private Integer productionQuantity;
    //忽略该字段
    @ExcelIgnore
    private String productionJobMaterial;
    //忽略该字段
    @ExcelIgnore
    private Integer status;
    //开始时间
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyyy-MM-dd HH:mm:ss")
    @ExcelProperty("开始时间")
    private Date startingTime;
    //结束时间
    //@JsonFormat是jackson包里面的注解，作用是从后台向前台传递日期值；
    //@DateTimeFormat是spring包里面的注解，作用是接收从页面传到后台的日期值；
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @DateTimeFormat(pattern="yyyyy-MM-dd HH:mm:ss")
    @ExcelProperty("结束时间")
    private Date endTime;

}
